package com.sky.vo;
/**
 * 1.当前模块名：sky-pojo
 *   模块作用：存放视图对象(Value Object)，用于Controller层返回给前端的结构化数据
 * 2.当前包名：com.sky.vo
 *   包作用：封装Controller层返回的视图数据模型（Value Object）
 * 3.当前类名：EmployeeLoginVO
 *   类作用：员工登录成功返回的视图对象
 */
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * EmployeeLoginVO：员工登录响应视图对象
 * 知识点说明：
 * 1. Swagger集成：@ApiModel注解增强接口文档可读性
 * 2. 令牌管理：JWT令牌作为认证凭证返回前端
 * 3. 最小化返回：仅包含必要字段（避免敏感信息泄露）
 * 4. 用户标识：同时返回userId和name支持多场景使用
 * 5. 安全设计：token字段需HTTPS传输防止截获
 */

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(description = "员工登录返回的数据格式")
public class EmployeeLoginVO implements Serializable {

    @ApiModelProperty("主键值")
    private Long id;

    @ApiModelProperty("用户名")
    private String userName;

    @ApiModelProperty("姓名")
    private String name;

    @ApiModelProperty("jwt令牌")
    private String token;

}
